In order to store data, some computer systems use a redundant array of inexpensive disks ("RAID") data storage subsystem. For example, a RAID subsystem may be coupled with a host or server that services clients on a network. The RAID subsystem typically includes a controller and a plurality of disk drives. The controller generally controls operations of the RAID subsystem. Information is physically stored on the drives.
It may be desirable to copy the information stored on the RAID subsystem and which is being used via the host. For example, the data stored on one or more of the drives may be backed up to ensure the data is available in the case that the RAID subsystem malfunctions. The drive from which the backup is desired is known as the source drive. In order to copy a portion of the data stored on the source drive of the RAID subsystem, the files on the source drive that are desired to be copied are closed. Thus, no input to or output from the files on the source drive is allowed during copying. This ensures that the data on the source drive does not change during the copying procedure. The desired files on the source drive are then copied progressively to another location. This location may be another drive, called a target drive. Typically, the organization of the source drive is also copied. Thus, the target drive may include directories and subdirectories containing copied files. The copies on the target drive can then be accessed separately from the originals on the source drive. The drive being copied is then released, allowing input to and output from the files.
Although the conventional method for providing a copy functions, it may take a long time to copy the files from the source drive to the target drive. This is particularly true where there is a great deal of data to be copied, for example for back up. During the conventional copying procedure, the source drive cannot be accessed via the host. Thus, users of the system may be precluded from reading, modifying, or otherwise utilizing the data to be copied for a relatively long time.
Accordingly, what is needed is a system and method for more rapidly generating a copy of data on a RAID subsystem. It would also be desirable if the method and system for generating the copy had a relatively low impact on system performance. The present invention addresses such a need.